Search engines have been traditionally used to help users to find text-based information that is related to a keyword text search submitted by a user. For example, many popular web search engines return a list of ranked search results (e.g., websites, etc.) in response to a user-submitted search query.
Today, in addition to text-based information, people search the Internet (or other sources of data) for an array of non-textual data that includes images, videos, music, and other type media. Searching of non-textual data presents many challenges and opportunities that may or may not be applicable to searches for text-based information.
When searching for images, a search engine often relies on keywords that are associated with an image. The keywords may be assigned to the image using various techniques. In some instances, text that is associated with the image (e.g. adjacent text, titles, file names, etc.) may be selectively used as keywords for the image. Also, user-assigned keywords may be associated with the image. In this way, users may search for images using text-based queries that return results based on keyword matches between search terms and image keywords.
However, in some instances, the relevance of image search results may be affected by search term ambiguity. Often, users submit a limited number of search terms when searching for non-textual data (i.e., one to two search terms). When a search term has multiple meanings, the search results may include results that are representative of the various meanings. For example, the term “mouse” may refer to a small rodent or a computer peripheral device. When a user submits an image search for a “mouse,” the search engine may return results that include images of small rodents and computer peripherals even though the user may intend to search for images of the small rodent.